package com.houger.ddd.common.config.kafka;

import lombok.Data;

/**
 * 此类的描述是：消费者配置
 *
 * @date 2019-01-15 20:50
 **/
@Data
public class KafkaConsumerProperties {

    /**
     * Broker 连接用户名
     */
    private String username;
    /**
     * Broker 连接密码
     */
    private String password;

    /**
     * 消费组 ID
     */
    private String groupId;

    /**
     * 是否是能自动提交
     */
    private Boolean enableAutoCommit = false;

    /**
     * 自动提交的时间间隔，当 {@link KafkaConsumerProperties#enableAutoCommit} 为 false 时，配置无效
     */
    private Integer autoCommitInterval = 1000;

    /**
     * 会话超时时间
     */
    private Integer sessionTimeout = 30000;

    /**
     * 拉取数据的规则
     */
    private String autoOffsetReset = "earliest";

    /**
     * 并发数
     */
    private Integer concurrency = 2;

    /**
     * 拉取最大个数
     */
    private Integer maxPollRecords = 100;

    /**
     * 拉取超时时间
     */
    private Integer pollTimeout = 3000;

    /**
     * 拉取的最大时间间隔
     */
    private Integer maxPollInterval = 60000;

}